package com.duolebo.uteped_sdk.utils;

import java.util.Arrays;
import java.util.List;

/**
 * @Author: LiuYang
 * @Date: 2023/12/11 12:59
 * @Description: 常量字段
 */
public class Const {

    public final static int CODE_SUCCESS = 100000;
    public final static int SCAN_TIME = 10000;
    public final static String PUBLISH_EVENT = "uteped_sdk/event";
    public final static String METHOD_CHANNEL = "uteped_sdk/method";

    //key
    public final static String KEY_PATH = "path";
    public final static String KEY_METHOD = "method";
    public final static String KEY_DATA = "data";
    public final static String KEY_RESULT = "result";
    public final static String KEY_TYPE = "type";
    public final static String KEY_NOTE = "note";
    public final static String KEY_NAME = "name";
    public final static String KEY_PHONE = "phone";
    public final static String KEY_ADDRESS = "address";
    public final static String KEY_USERID = "userId";
    public final static String KEY_LIST = "list";
    public final static String KEY_STATUS = "status";
    public final static String KEY_BATTERY = "battery";
    public final static String KEY_ACTION = "action";
    public final static String KEY_VALUE = "value";
    public final static String KEY_PERMISSION = "permission";
    public final static String KEY_ENABLE = "enable";
    public final static String KEY_PACKAGE = "package";
    public final static String KEY_TAG = "tag";
    public final static String KEY_LANGUAGE = "language";
    public final static String KEY_UNITS = "units";
    public static final String KEY_ERROR_CODE = "error_code";
    public static final String KEY_ERROR_MSG = "error_message";
    public static final String KEY_SUCCESS = "success";
    public static final String KEY_NOTIFICATION = "notification";
    public static final String KEY_APP_NOTIFICATION = "app_notification";
    public static final String KEY_SYSTEM = "system";
    public static final String KEY_FILE = "file";
    public final static String KEY_FIRMWARE = "firmware";
    public final static String KEY_FIRMWARE_VERSION = "firmware_version";
    public final static String KEY_RESET = "reset";

    public final static String KEY_allDayEnable = "allDayEnable";
    public final static String KEY_timingEnable = "timingEnable";
    public final static String KEY_fromTimeHour = "fromTimeHour";
    public final static String KEY_fromTimeMinute = "fromTimeMinute";
    public final static String KEY_toTimeHour = "toTimeHour";
    public final static String KEY_toTimeMinute = "toTimeMinute";
    public final static String KEY_remindInterval = "remindInterval";
    public final static String KEY_cyclePeriod = "cyclePeriod";
    public final static String KEY_fromQrcode = "fromQrcode";
    public final static String KEY_PROGRESS = "progress";
    public final static String KEY_DURATION = "duration";

    //type
    public final static String TYPE_MAP = "map";
    public final static String TYPE_LIST = "list";

    //
    public final static long SYNC_PERIOD_DEFAULT = 60 * 60 * 1000L;
    public final static String SYNC_PERIOD = "sync_period";

    // action
    public final static String ACTION_SYNC_DATA_COMPLETE = "act_sync_data_complete";
    public final static String ACTION_SYNC_CONTACT_STATE = "act_sync_contact_state";
    public final static String ACTION_SYNC_CONTACT_PROGRESS = "act_sync_contact_progress";
    public final static String ACTION_SYNC_SMS_REPLY_STATE = "act_sync_sms_reply_state";
    public final static String ACTION_SYNC_SMS_REPLY_PROGRESS = "act_sync_sms_reply_progress";
    public final static String ACTION_SYNC_EXERCISE_OPERATOR = "act_sync_exercise_operator";
    public final static String ACTION_SYNC_EXERCISE_REAL_STATE = "act_sync_exercise_real_state";
    public final static String ACTION_SYNC_EXERCISE_GPS = "act_sync_exercise_gps";
    public final static String ACTION_SYNC_EXERCISE_FINISHED = "act_sync_exercise_finished";
    public final static String ACTION_SPORT_DATA_NOTIFY = "act_sport_data_notify";
    public final static String ACTION_BLUETOOTH_STATE_ON = "act_bluetooth_state_on";
    public final static String ACTION_BLUETOOTH_STATE_OFF = "act_bluetooth_state_off";
    public final static String ACTION_APP_NOTIFICATION_CHECK = "act_app_notification_check";

    // remote action
    public final static String ACTION_REMOTE_REFRESH = "act_remote_refresh";

    //progress
    public final static String ACTION_COMPLETE = "action_complete";
    public final static String ACTION_FAILED = "action_failed";
    public final static String ACTION_PROGRESS = "action_progress";

    // state
    public final static String STATE_SYNC_RUNNING = "state_sync_running";
    public final static String STATE_DEVICE_DISCONNECTED = "state_device_disconnected";

    // method 
    //===========================device options========================
    public static final String M_setContinuousHeartRate = "setContinuousHeartRate";
    public static final String M_setAutoHeartRate = "setAutoHeartRate";
    public static final String M_setContinuousBloodOxygen = "setContinuousBloodOxygen";
    public static final String M_setBloodOxygenRemind = "setBloodOxygenRemind";
    public static final String M_setLowestRemind = "setLowestRemind";
    public static final String M_setHighestRemind = "setHighestRemind";
    public static final String M_setHeartRateZone = "setHeartRateZone";
    public static final String M_setSciSleep = "setSciSleep";
    public static final String M_setFutureWeatherCapability = "setFutureWeatherCapability";
    public static final String M_setTodayWeather = "setTodayWeather";
    public static final String M_setFutureWeather = "setFutureWeather";
    public static final String M_getFutureWeatherSupport = "getFutureWeatherSupport";
    public static final String M_setWeatherErrorInfo = "setWeatherErrorInfo";
    public static final String M_setAppMenstrualCapability = "setAppMenstrualCapability";
    public static final String M_setAppMenstrualModifyTime = "setAppMenstrualModifyTime";
    public static final String M_setMenstrualNotifyAbility = "setMenstrualNotifyAbility";
    public static final String M_setMenstrualCycleData = "setMenstrualCycleData";
    public static final String M_setCallRemindEnable = "setCallRemindEnable";
    public static final String M_setCallRemindHangup = "setCallRemindHangup";
    public static final String M_setFindWearCmd = "setFindWearCmd";
    public static final String M_getFindWearState = "getFindWearState";
    public static final String M_setSmsReplyEnable = "setSmsReplyEnable";
    public static final String M_setSmsRemindEnable = "setSmsRemindEnable";
    public static final String M_setTimeSyncEnable = "setTimeSyncEnable";
    public static final String M_setWeightSyncEnable = "setWeightSyncEnable";
    public static final String M_setScreenAutoLight = "setScreenAutoLight";
    public static final String M_getScreenAutoLightState = "getScreenAutoLightState";
    public static final String M_setScreenOnDuration = "setScreenOnDuration";
    public static final String M_queryDeviceSupportLanguage = "queryDeviceSupportLanguage";
    public static final String M_setDoNotDisturb = "setDoNotDisturb";
    public static final String M_queryDeviceDoNotDisturb = "queryDeviceDoNotDisturb";
    public static final String M_setTimeClock = "setTimeClock";
    public static final String M_getTimeClock = "getTimeClock";
    public static final String M_queryWorldClock = "queryWorldClock";
    public static final String M_querySupportWorldClockCount = "querySupportWorldClockCount";
    public static final String M_setWorldClock = "setWorldClock";
    public static final String M_setLanguage = "setLanguage";
    public static final String M_setAlarmList = "setAlarmList";
    public static final String M_getAlarmList = "getAlarmList";
    public static final String M_setNotificationConfig = "setNotificationConfig";
    public static final String M_setFindMyPhone = "setFindMyPhone";
    public static final String M_sendFindPhoneSwitchStatus = "sendFindPhoneSwitchStatus";
    public static final String M_setAutoStress = "setAutoStress";
    public static final String M_sendCameraPermission = "sendCameraPermission";
    public static final String M_setCameraStatus = "setCameraStatus";
    public static final String M_cameraControl = "cameraControl";

    public static final String M_setTimeDisplay = "setTimeDisplay";
    public static final String TIME_FORMAT = "time_format";
    public static final String DATE_FORMAT = "date_format";

    // ===========================sports========================
    public static final String M_setGpsParams = "setGpsParams";
    public static final String M_setIsOpenWorkoutOperatorReport = "setIsOpenWorkoutOperatorReport";
    public static final String M_setWorkoutRealTimeData = "setWorkoutRealTimeData";
    public static final String M_setSportOneRecord = "setSportOneRecord";
    public static final String M_getDeviceOperatorState = "getDeviceOperatorState";
    public static final String M_setDeviceOperator = "setDeviceOperator";
    public static final String M_queryWorkOutManageInfo = "queryWorkOutManageInfo";
    public static final String M_setWorkOutManageInfo = "setWorkOutManageInfo";
    public static final String M_startGpsSignal = "startGpsSignal";
    public static final String M_stopGpsSignal = "stopGpsSignal";

    // local
    public final static String M_checkPermissions = "checkPermissions";//权限检查
    public final static String M_queryPermissions = "queryPermissions";//权限检查
    public final static String M_hasPermission = "hasPermission";
    public final static String M_toPermissionPage = "toPermissionPage";
    public final static String M_log = "log";
    public final static String M_checkGPS = "checkGPS";
    public final static String M_isGPSOpen = "isGPSOpen";
    public final static String M_setSyncDataEnable = "setSyncDataEnable";
    public final static String M_setLogFileEnable = "setLogFileEnable";
    public final static String M_setDeviceFilter = "setDeviceFilter";
    public final static String M_useDatabaseByName = "useDatabaseByName";

    // device
    public final static String M_isBluetoothEnable = "isBluetoothEnable";
    public final static String M_isConnected = "isConnected";
    public final static String M_isConnectedGatt = "isConnectedGatt";
    public final static String M_isDeviceBusy = "isDeviceBusy";
    public final static String M_checkBT3 = "checkBT3";

    // permissions= type
    public final static String P_bluetooth = "p_bluetooth";
    public final static String P_location = "p_location";
    public final static String P_contact = "p_contact";
    public final static String P_call = "p_call";
    public final static String P_sms = "p_sms";
    public final static String P_storage = "p_storage";
    public final static String P_upgrade = "p_upgrade";

    public final static String APP_REMIND_OTHER_PACKAGE = "app_remind_other";
    public final static List<String> REMIND_PACKAGES = Arrays.asList(
            "com.skype.raider", "com.google.android.youtube", "com.whatsapp",
            "com.facebook.katana", "com.linkedin.android", "com.twitter.android",
            "com.viber.voip", "jp.naver.line.android", "com.google.android.gm",
            "com.instagram.android", "com.snapchat.android", "com.tencent.mm",
            "com.kakao.talk",
            // 以下APP未参与排序
            "com.facebook.orca", "com.pinterest", "com.elshafey.hangouts",
            "com.tumblr", "com.flickr.android", "com.vkontakte.android");


    public static final String JL_OTA_STAGE = "jl_ota_stage";
};
